package com.leyou.item.pojo;

import lombok.Data;
import tk.mybatis.mapper.annotation.KeySql;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * description: 商品规格参数实体类
 * @author 朱正磊
 * @date 2021-04-01 14:30:33
 */
@Data
@Table(name = "tb_spec_param")
public class SpecParam {

    /**
     * 自增长主键，规格参数id
     */
    @Id
    @KeySql(useGeneratedKeys = true)
    private Long id;

    /**
     * 商品分类id
     */
    private Long cid;

    /**
     * 规格组id
     */
    private Long groupId;

    /**
     * 参数名
     */
    private String name;

    /**
     * 是否是数字类型参数，是的话为true，否的话为false
     * Column(name = "`numeric`")的目的是避免产生歧义，因为numeric在mysql中是一个关键字
     * 在关键字上面添加``，可以避免mysql把它当成关键字来处理，而是当成普通的字符串来处理，其实就是相当于转义
     */
    @Column(name = "`numeric`")
    private Boolean numeric;

    /**
     * 数字类型参数的单位，非数字类型可以为空
     */
    private String unit;

    /**
     * 是否是sku通用属性，是的话为true，否的话为false
     */
    private Boolean generic;

    /**
     * 是否用于搜索过滤，是的话为true，否的话为false
     */
    private Boolean searching;

    /**
     * 数值类型参数，如果需要搜索，则添加分段间隔值，如CPU频率间隔：0.5-1.0
     */
    private String segments;

}
